High performance network fabric switches are utilized in networking environment to provide switching functionality for high performance computing and/or enterprise data centers. One type of such a high performance fabric switch is an Infiniband network fabric switch. For example, an Infiniband fabric switch may provide up to 100 Gigabit per second (Gbps) switching on 42 input/output ports. The fabric switch provides switching capabilities to a network to spread traffic on the network across multiple physical links between the components of the network.
The performance of an Infiniband switch may depend on the switching efficiency of the switch and the arbitration time required to switch between ports. In general, the faster that the fabric switch reliably processes the data received at the switch, the higher performance of the switch. One scheme developed to improve the efficiency of the switch is to serve those input ports that have the longest queue (or higher port occupancy). Better efficiency of the fabric switch is guaranteed if the queue with a higher occupancy is served first by a particular output port.
To find the highest occupancy among all of the participating queues in a high throughput and low latency fabric switch, the queue depths associated with an output port is sorted through one or more hardware components. The time taken to sort the queues directly affects the switching efficiency of the fabric switch. It also adds to the latency since during the sorting process, the output port is idle. Thus, a faster sorting scheme generally improves the overall efficiency of the fabric switch.
It is with these and other issues in mind that various aspects of the present disclosure were developed.